home *** CD-ROM | disk | FTP | other *** search
/ Amiga Games: Greatest Hits 1996 / Amiga Games: Greatest Hits 1996.iso / userbox / publicdomain / minbar121 / doc / wbstart.txt < prev    next >
Text File  |  1996-08-03  |  7KB  |  199 lines

  1. Documentation for WBStart V2.0                                13-Mar-1996
  2.  
  3.  
  4.    Permission is granted to make and distribute verbatim copies  of  this
  5. manual provided the copyright  notice  and  this  permission  notice  are
  6. preserved on all copies.
  7.  
  8. COPYRIGHT
  9.  
  10.    Copyright (C) 1991-96 Stefan Becker
  11.  
  12.    No program, document, data file or  source  code  from  this  software
  13. package, neither in whole nor in part, may be included or used  in  other
  14. software packages unless it is authorized by a  written  permission  from
  15. the author.
  16.  
  17.  
  18. NO WARRANTY
  19.  
  20.    There is no warranty for this software package.  Although  the  author
  21. has tried to prevent errors he can't guarantee that the software  package
  22. described in this document is 100% reliable. You are therefore using this
  23. material at your own risk. The author cannot be made responsible for  any
  24. damage which is caused by using this software package.
  25.  
  26.  
  27. DISTRIBUTION
  28.  
  29.    This software package is freely distributable. It may be transfered to
  30. any media which is used for the distribution of free software like Public
  31. Domain disk collections, CDROMs, FTP servers or bulletin board systems.
  32.  
  33.    In order to ensure the integrity of this software package distributors
  34. should use the original archive file WBStart2_0.lha (file name on Aminet:
  35. WBStart.lha). The author cannot be  made  responsible  if  this  software
  36. package has become unusable due to modifications of the archive  contents
  37. or of the archive file itself.
  38.  
  39.    There is no limit on the fee taken by distributors, e.g. for the media
  40. costs of floppy disks, streamer tapes or compact discs, or the process of
  41. duplicating. Such limits have proven to be harmful to the idea of  freely
  42. distributable software, e.g. the software package was removed instead  of
  43. reducing the price of a floppy disk below the limit.
  44.  
  45.    Although the author does not impose any limit on these fees  he  would
  46. like to express his personal opinions on this matter:
  47.  
  48.    * This software package should be made available to everyone  free  of
  49.      charge whenever this is possible.
  50.  
  51.    * If you have purchased this software package under normal  conditions
  52.      from a Public Domain dealer on a floppy disk and have paid more than
  53.      5DM or US $5 then you have definitely paid too  much.  Please  don't
  54.      support this improper profit making  any  longer  and  switch  to  a
  55.      cheaper source as soon as possible.
  56.  
  57.  
  58. USAGE RESTRICTIONS
  59.  
  60.    No program, document, data file or  source  code  from  this  software
  61. package, neither in whole nor in part, may be used on any  machine  which
  62. is used
  63.  
  64.    * for the research, development, construction, testing  or  production
  65.      of weapons or other military applications. This  also  includes  any
  66.      machine which is  used  in  the  education  for  any  of  the  above
  67.      mentioned purposes.
  68.  
  69.    * by people who accept, support or use violence against other  people,
  70.      e.g. citizens from foreign countries.
  71.  
  72.  
  73.  
  74. I. What is the purpose of this software package?
  75. ================================================
  76.  
  77. WBStart is a package  to  emulate  the  Workbenchs'  method  of  starting
  78. programs. Emulating this method seems to  be  easy  on  the  first  look,
  79. because you only have to load a program, create a process and then send a
  80. Workbench startup message to it.
  81.  
  82. But complications arise from this startup message. It  contains  pointers
  83. to memory and directory locks owned by your process and it  will  not  be
  84. returned until the newly created Workbench process exits. So your process
  85. can't quit until ALL Workbench processes which have been started by  your
  86. process are finished. If you don't wait the replied messages will go into
  87. nowhere land and the man from India will visit you.
  88.  
  89. WBStart solves this problem by using a handler process, which  loads  the
  90. program, creates the process, sends the message and then  waits  for  the
  91. reply. You just supply all  needed  information  like  program  name  and
  92. arguments in a library call. The handler copies this information so  your
  93. program can free its resources and exit.
  94.  
  95.  
  96.  
  97. II. Installation
  98. ================
  99.  
  100. Just copy the file libs/wbstart.library into your LIBS: directory.
  101.  
  102. The file WBStarter in dev/c/examples is an example program how to use the
  103. library. It has the following syntax:
  104.  
  105.    WBStarter <command> [<command> ...]
  106.  
  107. WBStarter tries to  start  each  command  as  Workbench  process  without
  108. parameters.
  109.  
  110.  
  111.  
  112. III. Contents of this software package
  113. ======================================
  114.  
  115. dev/         Autodoc, FD and C header files for wbstart.library. It  also
  116.              contains the source code for the WBStarter example  and  the
  117.              DICE link libraries.
  118.  
  119. libs/        wbstart.library. Copy this file to LIBS:
  120.  
  121. src/         Source code for the wbstart.library. It has been written for
  122.              DICE 3.0 and is included for educational purposes only.  Use
  123.              the command "DMake" to compile it.
  124.  
  125. WBStart.txt  This documentation.
  126.  
  127.  
  128.  
  129. IV. History
  130. ===========
  131.  
  132. 2.0 (13-Mar-1996)
  133.    - The code has been rewritten from scratch.
  134.    - The handler has been integrated into a shared  library.  This  means
  135.      that you don't have to start the handler by hand anymore. It will be
  136.      started automagically when you try to start a  WB  program  using  a
  137.      library call. This also means an end to all these "I can't start  WB
  138.      programs" error reports resulting from a missing e-Flag on the  file
  139.      L:WBStart-Handler :-)
  140.  
  141.      NOTE: The old interface is not supported anymore!
  142.            You have to rewrite your applications.
  143.  
  144.    - Requires OS 3.0 (V39) or better.
  145.    - Now uses memory pools to reduce memory fragmenting.
  146.    - Improved WB starter code. It should be almost 100% compatible to the
  147.      real Workbench now.
  148.  
  149.      NOTE: This may result in some incompatibilities to the  old  WBStart
  150.            package, so you  might  have  to  change  some  of  the  input
  151.            parameters, e.g. in ToolManager Exec objects.
  152.  
  153.    - Fixed the problem with variables and aliases.
  154.    - Fixed the problem with project icons whose default tool had no icon.
  155.  
  156. 1.4 (03-Oct-1993)
  157.    - If the handler can't duplicate the lock of an argument, it now looks
  158.      if the argument  name  ends  with  a  ':'.  This  type  of  argument
  159.      specifies a device and is produced by the Workbench, e.g. if you put
  160.      an unformatted disk into a drive and use the device icon as argument
  161.      to the program SYS:System/Format.
  162.  
  163. 1.3 (27-Jun-1993)
  164.    - The handler now copies the path from the WB process. This solves the
  165.      problems with programs which use WB2CLI() or similiar  functions  to
  166.      get the WB path list, e.g. SYS:System/CLI. My apologies  to  Michael
  167.      Sinz, Michael B. Smith and the GRn beta testers.
  168.    - The handler now scans the path list when it tries to load a program.
  169.    - The handler now uses NewLoadSeg() instead of LoadSeg().
  170.    - Major source cleanup.
  171.  
  172. 1.2 (21-Sep-1992)
  173.    - Corrected version string.
  174.  
  175. 1.1 (13-Sep-1992)
  176.    - Fixed weird return bug in WBStart.
  177.    - Fixed "Insert volume PROGDIR:..." bug.
  178.  
  179. 1.0 (24-Nov-1991)
  180.    - Initial release
  181.  
  182.  
  183.  
  184. V. Contact addresses
  185. ====================
  186.  
  187. Send comments, suggestions or bug reports to:
  188.  
  189.  Postal address:
  190.  
  191.                   Stefan Becker
  192.                   Bonner Ring 68
  193.           D-50374 Erftstadt
  194.                   GERMANY
  195.  
  196.  EMail:           stefanb@yello.ping.de
  197.  
  198.  World Wide Web:  http://www.ping.de/sites/yello/
  199.